home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / dviware / quicspool / mffiles / logodesign.mf < prev   
Text File  |  1990-10-01  |  4KB  |  171 lines

  1. % $Header: logodesign.mf,v 1.1 88/01/15 12:59:36 simpson Rel $
  2. % $Log:    logodesign.mf,v $
  3. % Revision 1.1  88/01/15  12:59:36  simpson
  4. % initial release
  5. % Revision 0.2  88/01/13  12:16:31  simpson
  6. % removed trademark notice
  7. % Revision 0.1  87/12/11  19:16:34  simpson
  8. % beta test
  9. % RCS $Header: logodesign.mf,v 1.1 88/01/15 12:59:36 simpson Rel $
  10. % Makes the TRW logo!  Whoopee!
  11. def LOGO =
  12. z0=(0,3.91a);
  13.  
  14. y1=y0-1a;
  15. fixpt(z1,z0,250);
  16.  
  17. y2=y1;
  18. over(z2,z1,3.46a);
  19.  
  20. y3=y0;
  21. z3-z2=z0-z1;
  22.  
  23.  
  24. y4=0; fixpt(z4,z0,250);    % the imaginary intersection of left of top and base
  25.  
  26. y5=0; over(z5,z4,1.19a);
  27.  
  28. y6=0; over(z6,z4,2.45a);
  29.  
  30. y7=2.16a;
  31. fixpt(z7,z6,70);
  32.  
  33. y8=y7; z8-z5 = z7-z6;
  34.  
  35.  
  36. fill z0--z1--z2--z3..cycle;   % Top of the T
  37. fill z5--z6--z7--z8..cycle;   % Bottom of the T
  38.  
  39. % The R requires some erasures.  Tricky.
  40.  
  41. y10=0;
  42. over(z10,z4,3.8a);
  43.  
  44. y11=y10;
  45. over(z11,z4,5.01a);
  46.  
  47. y12=2.16a;
  48. fixpt(z12,z11,70);
  49.  
  50. y13=y12;
  51. z13-z10=z12-z11;
  52.  
  53. fill z10--z11--z12--z13..cycle;      % Bottom parallelogram of the R
  54.  
  55. pair bigcenter;     % Center of major (2.51 diam) circle;
  56. bigcenter=((7.60-.26)*a-(2.51a/2),(3.91a-(2.51a/2)));
  57.  
  58. pair littlecenter;  % Center of the minor (1.08 rad) circle;
  59. littlecenter=((7.60-.26)*a-1.08a, (3.91-1.08)*a);
  60.  
  61. y14=3.91a; fixpt(z14,z10,70);
  62. y15=y14-1a; fixpt(z15,z10,70);
  63. y16=y14;  x16 = xpart bigcenter;
  64. y17=y15;  x17 = x16;
  65.  
  66. fill z14--z15--z17--z16..cycle;       % Top left of the R, sort of.
  67.  
  68. pair rvert;    % the imaginary vertex of the R
  69. ypart rvert=2.36a;
  70. fixpt(rvert,z11,70);
  71.  
  72. y18=0; fixpt(z18,rvert,(250+45.5));
  73. y19=0; x19=x18+1.29a;
  74. x20=x18+.56a;
  75. y21=2.15a; fixpt(z21,rvert,(250+45.5));
  76. path bigsemicircle;
  77. bigsemicircle = (halfcircle scaled (2.51a) rotated (-90)) shifted bigcenter;
  78. path crossline; 
  79.   crossline = (x18+0.56a, 0)..(x18+.56a, 3a);
  80. z100 = (x18+0.56a, 3*a*xpart (crossline intersectiontimes bigsemicircle) );
  81. y101 = 2.16a; x101=x100;
  82. y102 = y101;  fixpt(z102, rvert, (250+45.5));
  83.  
  84. fill z18--z19--z100--z101--z102..cycle;   % Bottom right of the R.
  85. fill bigsemicircle--cycle;    % Top right of the R, without the extras.
  86. fill (quartercircle scaled (1.08a*2) shifted littlecenter)--cycle;
  87.  
  88. x103=(7.60-(.26+1.24))*a; y103 = y15;    % Fill in something to carve out
  89. y104=y103; x104 = x103-.31a;
  90. x105=x104; y105 = y104-.31a;
  91. y106=2.16a; x106= x103-(.9/2)*a;
  92. y107=y106; x107=x103;
  93.  
  94. fill z103--z104--z105--z106--z107--cycle; % Now we have to take away the circs
  95.  
  96. path bigecirc, smallecirc;    % The quarter circles to unfill
  97. pair bigecent, smallecent;    % different centers
  98.  
  99. bigecent = (x106,(2.16a+(.9/2)*a));
  100. smallecent = (x104, y105);
  101.  
  102. bigecirc = (((quartercircle rotated -90)scaled .9a) shifted bigecent) -- 
  103. bigecent--cycle;
  104. smallecirc = ((quartercircle scaled (.31a*2)) shifted smallecent) -- smallecent
  105.  --cycle;
  106.  
  107. unfill bigecirc; unfill smallecirc;       %  We can but hope.
  108.  
  109.  
  110. %  The W is a *little* easier
  111.  
  112. z22=(7.6a,3.91a);
  113. z23=(7.6a,2.91a);
  114. z24=((7.6+1.19)*a, 2.91a);
  115. z25-z24=z22-z23;
  116.  
  117. fill z22--z23--z24--z25..cycle;          % Top left rect of W
  118.  
  119. z26=(7.6a,0);
  120. x27=x26;y27=2.16a;
  121. x28=x24;y28=y27;
  122. x29=x28;y29=y28-.33a;
  123. y30=y28; fixpt(z30,z29,70);
  124.  
  125. pair wvert;     % The bottom vertex of the w, imaginary in the hole
  126. wvert=(9.93a,(2.16+.41)*a);
  127.  
  128. y31=y30; fixpt(z31,wvert,(270-21.75));
  129. y32=0; fixpt(z32,wvert,(270-21.75));
  130.  
  131. fill z32--z31--z27--z26..cycle;   % Bottom left of W  (omit 28...30)
  132.  
  133. pair uright;     % The upper right.  Determines where the bottom ends up
  134. uright=(12.82a, 3.91a);
  135.  
  136. x33=xpart wvert; y33=0;
  137. y34=0; fixpt(z34,uright,(270-22.25));
  138. y35=2.16a; fixpt(z35,uright,(270-22.25));
  139. x36=x33; y36=y35;
  140. y37=y36; x37=x22+3.35a;
  141. x38=x37; y38=y37-.33a;
  142. y39=y37; fixpt(z39,z38,70);
  143.  
  144. %show z33,z34,z35,z39,z38,z37,z36;
  145. fill z33--z34--z35--z36..cycle;  % Bottom right of W  (omit 39--38--37)
  146.  
  147. z40=uright;
  148. y41=y40; fixpt(z41,z38,70);
  149. y42=2.91a; fixpt(z42,z38,70);
  150. y43=y42; fixpt(z43,uright,(270-22.5));
  151.  
  152. fill z40--z41--z42--z43..cycle;   % Upper right trapezoid of W
  153.  
  154. z44=(x38,y40);
  155. y45=y44; fixpt(z45,z29,70);
  156. y46=y43; fixpt(z46,z29,70);
  157. z47=(x44,y46);
  158.  
  159. fill z44--z45--z46--z47..cycle;   % Top middle trapezoid of W
  160.  
  161. penlabels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20);
  162. penlabels(21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40);
  163. penlabels(41,42,43,44,45,46,47);
  164. penlabels(100,101,102,103,104,105,106,107);
  165.  
  166. enddef;
  167.  
  168.